package com.molichuxing.gateway.bff.risk.services;

import java.util.Map;

import com.molichuxing.framework.dto.Paged;
import com.molichuxing.gateway.bff.risk.entity.request.create.BlacklistCreateVo;
import com.molichuxing.gateway.bff.risk.entity.request.modify.BlacklistModifyVo;
import com.molichuxing.gateway.bff.risk.entity.response.BlacklistVo;
import com.molichuxing.gateway.bff.risk.entity.response.CreditRecognitionVo;

/**
 * 
 * @author liyg
 * 2019-08-31
 * 黑名单bff服务
 * 
 */
public interface BlacklistBffService {

	/**
	 * 获取黑名单列表
	 * 
	 * @param map
	 *            参数
	 *key:userName
	 *            String 用户名
	 *key:name
	 *            String 用户姓名
	 *key:phone
	 *            String 用户手机号
	 *key:idNumber
	 *            String 身份证号
	 *key:startTime
	 *            LocalDateTime 拉黑开始时间
	 *key:endTime
	 *            LocalDateTime 拉黑结束时间
	 *key:type
	 *            Integer 拉黑方式
	 *key:pageNum
	 *            Integer 当前页
	 *key:pageSize
	 *            Integer 每页显示条数
	 * @return
	 */
	Paged<BlacklistVo> getBlacklistList(Map<String, Object> map);
	
	/**
	 * 创建黑名单
	 * 
	 * @param createVo
	 * @return
	 */
	Boolean createBlacklist(BlacklistCreateVo createVo);
	
	/**
	 * 移除黑名单
	 * 
	 * @param modifyVo
	 * @return
	 */
	Boolean  deleteBlacklist(BlacklistModifyVo modifyVo);
	
	/**
	 * 根据userId查询最近一条征信信息
	 * @param userId
	 * @return
	 */
	CreditRecognitionVo getCreditRecognition(Integer userId);

	/**
	 * 移除黑名单
	 * 
	 * @param modifyVo
	 * @return
	 */
	Boolean deleteUserBlacklist(BlacklistModifyVo modifyVo);
}
